[Collision] Introduce multi-staged collision pipeline#5841
[Collision] Introduce multi-staged collision pipeline#5841hugtalbot merged 29 commits intosofa-framework:masterfrom
Conversation
9d2bf0b to
bbabba1
Compare
|
[ci-build][with-all-tests] |
bbabba1 to
fed32d2
Compare
...n/Detection/Algorithm/src/sofa/component/collision/detection/algorithm/CollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...ection/Algorithm/src/sofa/component/collision/detection/algorithm/MultiCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/CompositeCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...ection/Algorithm/src/sofa/component/collision/detection/algorithm/MultiCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/MultiCollisionPipeline.h
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/AbstractSubCollisionPipeline.h
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/AbstractSubCollisionPipeline.h
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/AbstractSubCollisionPipeline.h
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/AbstractSubCollisionPipeline.h
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/AbstractSubCollisionPipeline.h
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/AbstractSubCollisionPipeline.h
Outdated
Show resolved
Hide resolved
...n/Detection/Algorithm/src/sofa/component/collision/detection/algorithm/CollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...n/Detection/Algorithm/src/sofa/component/collision/detection/algorithm/CollisionPipeline.cpp
Show resolved
Hide resolved
...ection/Algorithm/src/sofa/component/collision/detection/algorithm/MultiCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/AbstractSubCollisionPipeline.h
Outdated
Show resolved
Hide resolved
9518785 to
add0b08
Compare
|
[ci-build][with-all-tests] |
...on/Algorithm/src/sofa/component/collision/detection/algorithm/AbstractSubCollisionPipeline.h
Outdated
Show resolved
Hide resolved
...on/Algorithm/src/sofa/component/collision/detection/algorithm/CompositeCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
ef2ed2f to
893613b
Compare
|
[ci-build][with-all-tests] |
|
[ci-depends-on] detected during build #15. To unlock the merge button, you must
|
|
[ci-depends-on] detected during build #16. To unlock the merge button, you must
|
|
[ci-depends-on] detected during build #17. To unlock the merge button, you must
|
e1b30ab to
4f048ad
Compare
|
[ci-depends-on] detected during build #18. To unlock the merge button, you must
|
Co-authored-by: Hugo <hugo.talbot@sofa-framework.org>
4f048ad to
3ac2add
Compare
|
[ci-depends-on] detected during build #19. To unlock the merge button, you must
|
...n/Detection/Algorithm/src/sofa/component/collision/detection/algorithm/CollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
...etection/Algorithm/src/sofa/component/collision/detection/algorithm/SubCollisionPipeline.cpp
Outdated
Show resolved
Hide resolved
…t/collision/detection/algorithm/CollisionPipeline.cpp (update msg) Co-authored-by: Alex Bilger <alxbilger@users.noreply.github.com>
|
[ci-depends-on] detected during build #20. To unlock the merge button, you must
|
|
[ci-depends-on] detected during build #21. To unlock the merge button, you must
|
|
[ci-depends-on] detected during build #22. To unlock the merge button, you must
|
|
[ci-build] |
|
[ci-depends-on] detected during build #23. All dependencies are merged/closed. Congrats! 👍 |
Based on
Add the ability to have multiple collision pipeline in a scene, instead of one monolithic pipeline (presented at the STC20)
This allows a lot of things:
It adds a warning if no collision model are handled by any pipeline.
This PR also adds a not-an-alias for
CollisionPipelinesimilar toBruteForceDetection, but in this case I would not deprecate it and would be more seen as a convenience for most users, as the whole Multi + Sub collision pipeline is quite verbose in the end. And the former CollisionPipeline was doing a lot of things implicitly.EDIT: with this, PipelineImpl is not used anymore (and has ... a dubious implementation by the way)
[with-all-tests]
[ci-depends-on https://github.com/sofa-framework/Regression/pull/96]
EDIT2: examples for a showcase

w/o Composite Pipeline[same collision distance, the 2nd sphere cannot go through]w/ Composite Pipeline[different collision distances, the 2nd case has a smaller one so the sphere can go through]By submitting this pull request, I acknowledge that
I have read, understand, and agree SOFA Developer Certificate of Origin (DCO).
Reviewers will merge this pull-request only if